Using a digital video effect to generate a video stream

ABSTRACT

In one aspect, a method involves (i) making a determination that a first computing device is scheduled to run a first DVE in connection with a first video stream; (ii) responsive to making the determination that the first computing device is scheduled to run the first DVE in connection with the first video stream, selecting a second DVE; and (iii) causing a second computing device to run the selected second DVE, wherein running the selected second DVE causes the second computing device to generate the first video stream by modifying a second video stream.

CROSS REFERENCES TO RELATED APPLICATIONS

This disclosure claims priority to U.S. Provisional Application No.61/941,267, entitled “Using a Digital Video Effect to Generate a VideoStream,” which was filed on Feb. 18, 2014, and which is herebyincorporated by reference herein.

This disclosure also relates to (i) U.S. Pat. No. ______, entitled“Using a Digital Video Effect to Generate a Video Stream,” (AttorneyDocket No. 13-1800), and (ii) U.S. Pat. No. ______, entitled “Using aDigital Video Effect to Generate a Video Stream,” (Attorney Docket No.14-1801), both of which (i) are assigned to the assignee of the presentdisclosure, (ii) are being filed simultaneously with the presentdisclosure, (iii) and are hereby incorporated by reference herein intheir entirety.

USAGE AND TERMINOLOGY

In this disclosure, unless otherwise specified and/or unless theparticular context clearly dictates otherwise, each usage of “a” or “an”means at least one, and each usage of “the” means the at least one.

TECHNICAL FIELD

This disclosure relates generally to digital video effects andtelevision-broadcasting systems.

BACKGROUND

A computing device may perform functions or acts related to digitalvideo effects (DVE). For example, the computing device may, based onuser input, design and/or run a DVE. As a result of the computing devicerunning a DVE, the computing device may generate a video stream. Assuch, the design of a DVE may affect the corresponding generated videostream. In one example, a DVE may be designed such that the computingdevice generates the corresponding video stream by manipulating an inputvideo stream, such as by scaling video content represented by the inputvideo stream and/or or by overlaying text or other content on the videocontent. In one example, this may occur in connection with atelevision-broadcasting system.

Typically, a television-broadcasting system includes a master controlsystem, which serves as a technical hub of the television-broadcastingsystem and is the final point before a video stream is sent to anair-chain system for broadcast. The master control system may include acomputing device known as a stunt switcher that may run a DVE and as aresult, may use an input video stream to generate an output a videostream for broadcast.

In the context of a television-broadcasting system, an example DVE maybe designed such that the stunt switcher uses an input video stream togenerate a video stream by overlaying school-related alerts (e.g., inthe form of rotating text or graphics) on a lower-third portion of videocontent represented by the input video stream. This is a common way inwhich a media organization affiliated with the television-broadcastingsystem may provide to its viewers an indication that certain schools maybe closed for the day due to bad weather, for instance. Depending on thedesign of the DVE, the stunt switcher may overlay the school-relatedalerts for a predetermined duration or until the stunt switcher runsanother DVE to “clear” the alerts.

SUMMARY

In one aspect, a method involves (i) making a determination that a firstcomputing device is scheduled to run a first DVE in connection with afirst video stream; (ii) responsive to making the determination that thefirst computing device is scheduled to run the first DVE in connectionwith the first video stream, selecting a second DVE; and (iii) causing asecond computing device to run the selected second DVE, wherein runningthe selected second DVE causes the second computing device to generatethe first video stream by modifying a second video stream.

In another aspect, a non-transitory computer-readable storage medium hasstored thereon program instructions that when executed by a processor,cause performance of a set of functions including (i) making adetermination that a first computing device is scheduled to run a firstDVE in connection with a first video stream; (ii) responsive to makingthe determination that the first computing device is scheduled to runthe first DVE in connection with the first video stream, selecting asecond DVE; and (iii) causing a second computing device to run theselected second DVE, wherein running the selected second DVE causes thesecond computing device to generate the first video stream by modifyinga second video stream.

In another aspect, a system includes a production switcher and a controlconfigured for: (i) making a determination that a first computing deviceis scheduled to run a first DVE in connection with a first video stream;(ii) responsive to making the determination that the first computingdevice is scheduled to run the first DVE in connection with the firstvideo stream, selecting a second DVE; and (iii) causing a secondcomputing device to run the selected second DVE, wherein running theselected second DVE causes the second computing device to generate thefirst video stream by modifying a second video stream.

These, as well as other aspects, advantages, and alternatives, willbecome apparent to those of ordinary skill in the art by reading thefollowing detailed description, with reference where appropriate to theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a simplified block diagram of an exampletelevision-broadcasting system;

FIG. 2 is a simplified block diagram of an example computing device;

FIG. 3 is a simplified block diagram of an example master controlsystem;

FIG. 4 is a flow chart showing acts of an example method;

FIG. 5 is a flow chart showing acts of another example method;

FIG. 6 is a flow chart showing acts of still another example method; and

FIG. 7 is a flow chart showing acts of yet another example method.

DETAILED DESCRIPTION OF THE DRAWINGS I. Overview

As described above, in an example television-broadcasting system, astunt switcher may run a DVE that causes the stunt switcher to generatean output video stream for broadcast by overlaying school-related alertson a lower-third portion of video content represented by an input videostream. To increase the chance that viewers see these alerts, it may bedesired to broadcast the alerts consistently during a particular timeperiod. As such, in one example, a user may cause the stunt switcher torun the DVE at 6:00 am, and then cause the stunt switcher to run anotherDVE at 10:00 am to “clear” the alerts.

However, while this may increase the chance that viewers see the alerts,overlaying alerts (or other content) in this manner may have someundesired effects. To illustrate this, assume that from 6:00 am to 7:00am, the television-broadcasting system is scheduled to broadcast aone-hour set of video content that includes a mix of news programsegments (collectively making up a news program) and commercials. Thisinformation may be specified in a traffic schedule (sometimes referredto as a “traffic log”). As such, the traffic schedule may specify thatthe one-hour broadcast begins with a six-minute news program segmentfollowed by a set of eight thirty-second commercials, followed byanother six-minute news program segment, and so forth.

By using the technique described above, a user may cause the stuntswitcher to overlay the school-related alerts on the entire set of videocontent as it is being broadcast. But in some instances, a mediaorganization may find this undesirable as the alerts may obstructportions of the commercials (e.g., portions that includes disclaimertext) that the media organization may seek to keep unobstructed. Themedia organization may seek to keep these portions unobstructed for avariety of reasons, such as to adhere to a contractual agreement with acommercial provider or to adhere to industry regulations, for instance.

As one approach to addressing this issue, a user may design the DVE in adifferent manner so that these obstruction do not occur. For example,the user may design the DVE such that the stunt switcher generates thecorresponding video stream by vertically squeezing and upwardly shiftingthe video content represented by the input video stream, therebycreating a bar of “empty” video content below the “original” videocontent, and overlaying the alerts on that empty video content. As aresult, the alerts do not obstruct any portions of the commercials (orany other original video content for that matter). However, in someinstances, a media organization may find this undesirable as runningthis type of DVE instead causes distortion of the original video content(i.e., by vertically squeezing the original video content).

Notably, while a media organization may be willing to tolerate thedistortion of some types of video content, it may be unwilling totolerate distortion of other types of video content. For example, whilethe media organization may be willing to tolerate distortion of acommercial, it may not be willing to tolerate distortion a news programsegment, as the latter may result in an unflattering depiction of a newsanchor or another person affiliated with the media organization.

In one aspect of the present disclosure, a television-broadcastingsystem includes a stunt switcher and an automation system that accessesdata representing a traffic schedule for a television broadcast andselects a record from the traffic schedule, wherein the recordidentifies a video source. The automation system then determines a typeof the identified video source, and uses the determined type of theidentified video source as a basis to select a DVE. Then, the automationsystem causes the stunt switcher to run the selected DVE, whereinrunning the selected DVE causes the stunt switcher to generate amodified version of an input video stream received from the identifiedvideo source. Video content represented by the generated video streammay then be encoded and broadcast to viewers.

In one example, the automation system determining the type of theindicated video source involves the automation system determining thatthe video source is a news production system, which in turn may suggestthat the input video stream represents a news program segment.Accordingly, in this example, the automation system may select a DVEthat is designed such that the stunt switcher generates the video streamby overlaying school-related alerts on the video content represented bythe input video stream, but without distorting (e.g., by verticallysqueezing) the video content. Accordingly, the automation system maycause the school-related alerts to be overlayed on a news programsegment without distorting the news program segment.

In another aspect of the present disclosure, the automation system mayselect a record from the traffic schedule, wherein the record identifiesvideo content. The automation system then determines a type of the videocontent, and uses the determined type of video content as a basis toselect a DVE. Then, the automation system causes the stunt switcher torun the selected DVE, wherein running the selected DVE causes the stuntswitcher to generate a modified version of an input video streamrepresenting the identified video content. The video content representedby the generated video stream may then be encoded and broadcast toviewers.

In one example, the automation system determining the type of theidentified video content involves the automation system determining thatthe video content is a commercial. Accordingly, in this example, theautomation system may select a DVE that is designed such that the stuntswitcher generates the video stream by vertically squeezing and upwardlyshifting the video content, and by overlaying the school-related alertson the bar of “empty” video content below the original video content asdescribed above. Accordingly, the automation system may cause theschool-related alerts to be overlayed in connection with a commercialwithout actually obstructing the commercial.

Thus, in some examples, the automation system may ensure thatschool-related alerts are presented to viewers consistently over adesired duration, but in different manners depending on whether theunderlying video content is a news program segment or a commercial so asto avoid the undesired issues discussed above. Also, the automationsystem may likewise select and cause the stunt switcher to run differentDVEs in connection with other types of video sources or video content,as desired.

As noted above, a stunt switcher running a DVE may cause the stuntswitcher to generate a modified version of an input video streamreceived from a video source. In some instances though, the input videostream may itself have been generated as a result of a DVE being run.For example, where the video source is a news production system, aproduction switcher in the news production system may run a first DVEthat causes the production switcher to generate a second video streamthat is a modified version of the first video stream. And then, as thesecond video stream is transmitted through a master control system, astunt switcher in the master control system may run a second DVE thatcauses the stunt switcher to generate a third video stream that is amodified version of the second video stream.

In one example, the first DVE may be configured such that, when run, theproduction switcher generates the second video stream by overlayingweather information on a first area of the video content represented bythe first video stream. And, the second DVE may be configured such that,when run, the stunt switcher generates the third video stream byoverlaying school-related alerts on the same first area of the videocontent. As such, this may result in the school-related alerts beingoverlaid on the weather information, which may be visually unappealingto a viewer.

Accordingly, in another aspect of the present disclosure, a controllerwithin a news production system may make a determination that the stuntswitcher is scheduled to run the second DVE in connection with thesecond video stream, such as by receiving an alert from the automationsystem. Then, responsive to the controller making this determination,the controller may select a third DVE, and may cause the productionswitcher to run the selected third DVE, wherein running the selectedthird DVE causes the production switcher to generate the second videostream by modifying the first video stream. The video contentrepresented by the generated third video stream may then be encoded andbroadcast to viewers.

In one example, the selected third DVE is designed such that theproduction switcher running the selected third DVE causes the productionswitcher to overlay weather information on a second area of videocontent represented by the first video stream. Further, the automationsystem may cause the stunt switcher to run the second DVE, whereinrunning the second DVE causes the stunt switcher to generate a modifiedversion of the second video stream by overlaying the school-relatedalerts on a second area of the video content, and where that second areais positioned below the first area. Accordingly, this may allow thetelevision-broadcasting system to “stack” the weather information on topof the school-related alerts such so as to provide the news programsegment, the weather information, and the school-related alerts toviewers in a visually appealing manner.

II. Example Television-Broadcasting System

FIG. 1 is a simplified block diagram of an exampletelevision-broadcasting system 100 in which aspects of the presentdisclosure can be implemented. As shown, the television-broadcastingsystem 100 incudes a traffic system 102, a news production system 104, avideo server 106, a master control system 108, and an air-chain system110. Generally, in accordance with a traffic schedule created via thetraffic system 102, video streams may be transmitted from the newsproduction system 104 and/or the video server 106, through the mastercontrol system 108, and to the air-chain system 110 for televisionbroadcast.

A. Computing Device

Each of the systems, devices, components or other entities describedabove, namely the traffic system 102, the news production system 104,the video server 106, the master control system 108, and the air-chainsystem 110 (and each sub-entity included therein) may be implemented invarious ways. For example, one or more of these entities may beimplemented as a computing device.

FIG. 2 shows an example of a computing device 200. The computing device200 may take various forms, including for example, a mobile phone,tablet, laptop, or workstation. The computing device 200 may alsoinclude various components, including for example, a user interface 202,a communication interface 204, a processor 206, and a data storage 208,all of which may be communicatively connected to each other via a systembus, network, or other connection mechanism 210.

The user interface 202 may take a variety of forms and may facilitateinteraction between the computing device 200 and a user of the computingdevice 200, such as by receiving input from the user and providingoutput to the user. Thus, the user interface 202 may include inputcomponents such as a computer mouse, a keyboard, a touch-sensitivepanel, or perhaps a microphone for receiving voice commands. Inaddition, the user interface 202 may include output components such as adisplay screen (which, for example, may be combined with atouch-sensitive panel) a sound speaker, or a haptic feedback system.Other examples are possible as well.

The communication interface 204 may also take a variety of forms and mayfacilitate communication of data (e.g., instructions or video streams)between the computing device 200 and one or more other devices accordingto any number of protocols. In one example, the communication interface204 may take the form of a wired interface, such as an Ethernetinterface or a high-definition serial-digital interface (HD-SDI). Asanother example, the communication interface 204 may take the form of awireless interface, such as a WiFi interface. In either case, thecommunication interface 204 may include communication input and/orcommunication output interfaces each of which may include one or morephysical ports. Other examples are possible as well.

The processor 206 may also take a variety of forms and may include ageneral purpose processor (e.g., a microprocessor) and/or a specialpurpose processor (e.g., a digital signal processors (DSP)). Otherexamples are possible as well.

The data storage 208 may also take a variety of forms and may includeone or more volatile, non-volatile, removable, and/or non-removablestorage components, such as magnetic, optical, or flash storage, and maybe integrated in whole or in part with the processor 206. In oneexample, the data storage 208 may take the form of a non-transitorycomputer-readable storage medium, having stored thereon programinstructions (e.g., compiled or non-compiled program logic and/ormachine code) that, when executed by the processor 206, cause thecomputing device 200 or another device to perform one or more functionsor acts, such as those described in this disclosure. As such, thecomputing device 200 may be configured for performing such functions oracts. In some instances, the computing device 200 may cause anotherdevice to perform a function or act by transmitting a suitableinstruction to that the device. The computing device 200 may also usethe data storage 208 to store or retrieve various types of data such asthe data described in this disclosure.

B. Traffic System

The traffic system 102 may perform functions or acts related to atraffic schedule for a television broadcast. For instance, the trafficsystem 102 may create or edit a traffic schedule, perhaps based on userinput. In addition, the traffic system 102 may store or retrieve datarepresenting a traffic schedule, or transmit data representing a trafficschedule to another device. For example, the traffic system 102 maytransmit data representing a traffic schedule to an automation systemsuch that the automation system may perform functions or acts inaccordance with the traffic schedule.

Two example traffic systems are WO Traffic provided by WideOrbit Inc. ofSan Francisco, Calif., and OSi-Traffic™ provided by Harris Corporationof Melbourne, Fla. Other examples are possible as well.

Generally, a traffic schedule specifies an order of events that relateto a television broadcast for a given station during a given timeperiod. The traffic schedule may include multiple ordered records, eachcorresponding to one or more of these events. A record may include oneor more attributes, including for example, a video content identifier(sometimes referred to as a “house number”), a video source identifier,a duration, a start-time type, and a start time. Other attributes arepossible as well.

A record may include at least one of either a video content identifieror a video source identifier. If the record corresponds to an eventinvolving stored video content (e.g., playing a locally storedcommercial), the record may include a video content identifier. A videocontent identifier identifies video content. In one example, a videocontent identifier may be a unique identifier within a giventelevision-broadcasting system, and may map to a file location in a datastorage where a video file representing the video content is stored.Therefore, based on the video content identifier, a video server mayretrieve the video file, and generate and output a video streamrepresenting the video content.

Alternatively, if the record corresponds to a video source, the recordmay include a video source identifier. A video source identifieridentifies a video source. In one example, a video source identifier maybe a unique identifier within a given television-broadcasting system,and may map to a video source that outputs video content in the form ofa video stream. As such, whether a record includes a video contentidentifier or a video source identifier, the record may correspond to avideo stream that represents video content.

The duration indicates the duration of the corresponding video stream.Further, the start-time type indicates how and/or when a start time forthe corresponding video stream may be determined. The start-time typemay be absolute, calculated, or manual. An absolute start-time typeindicates that the start time is a fixed time that may be determinedbefore any records in the traffic schedule are processed by anautomation system. This is sometimes referred to as a “hard” start time.A calculated start-time type indicates that the start time is when thepreceding record entry has “completed” (i.e., when the video streamcorresponding to the previous record has played for its duration), andmay be determined based on the start time and duration of the previousrecord. A manual start-time type indicates that the start time is when arequest is received from a user or device, and therefore it cannot bedetermined until the request is received. Finally, the start timeindicates the intended start time of the corresponding video stream.

C. News Production System

The news production system 104 may perform functions or acts related toproducing a news program, which may involve running DVEs. In thiscontext, the news production system 104 may produce a news program inaccordance with a news program schedule (sometimes called a “rundown”),which specifies an order of events related to the production of the newsprogram. For instance, a news program schedule may indicate that variousvideo clips are to be loaded and played out by a video server in aparticular order so that the video clips may be included as part of thenews program.

The news production system 104 may perform functions or acts related toa news production schedule for a news program. For instance, the newsproduction system 104 may create or edit a news program schedule,perhaps based on user input. In addition, the news production system 104may store or retrieve data representing a news program schedule, ortransmit data representing a news program schedule to another device.For example, the news production system 104 may transmit datarepresenting a traffic schedule to an automation system such that theautomation system may perform functions or acts based on that data.

The news production system 104 may also output the news program (perhapsas separate news program segments), and therefore the news productionsystem 104 may serve as a video source. The news production system 104may output the news program in various forms, including for example, inthe form a video stream. Other examples are possible as well.

In some instances, the news production system may include a productionswitcher that may perform functions or acts related to DVEs. Forexample, the production switcher may design or run a DVE, perhaps basedon input received from a user. In addition, the production switcher maystore or retrieve data (e.g., program instructions) representing a DVE.The production switcher may perform these or other functions or acts ina same or similar manner to those described below in connection with thestunt switcher.

In some instances, the news production system 104 includes a controllerthat causes the news production system 104 to perform one or morefunctions or acts, such as those described herein. In some instances,the controller may be integrated with another device such as theproduction system.

D. Video Server

Generally, the video server 106 may perform functions or acts related toprocessing video files and video streams. For example, the video server106 may receive a video stream from a video source, use the video streamto generate a video file, and store the video file. In addition, thevideo server 106 may retrieve a video file, use the video file togenerate a video stream, and output the video stream. Accordingly, thevideo server 106 may also serve as a video source.

An example of a video server is the K2 server provided by Grass Valley™of San Francisco, Calif. Other examples are possible as well.

E. Master Control System

The master control system 108 is the technical hub of thetelevision-broadcasting system 100 and may perform functions or actsrelated to routing, switching, and/or manipulating video streams.

FIG. 3 shows the master control system 108 in greater detail. As shown,the master control system 108 includes a router 302, a stunt switcher304, a bypass switcher 306, and an automation system 308.

1. Router

The router 302 may perform functions or acts related to mapping inputports to output ports. For example, the router 302 may map one of itsinput ports connected to the newsroom production system 104 via acommunication path 112 to one of its output ports connected to an inputport of the stunt switcher 304 via a communication path 312, therebyallowing a video stream output by the news production system 104 to betransmitted via the communication path 112, the router 302, and thecommunication path 312, to the stunt switcher 304.

As another example, the router 302 may map another one of its inputports connected to the video server 106 via a communication path 114 toanother one of its output ports connected to another input port of thestunt switcher 304 via a communication path 316, thereby allowing avideo stream output by the video server 106 to be transmitted via thecommunication path 114, the router 302, and the communication path 316,to the stunt switcher 304.

Though not shown, typically a router includes more input ports thatoutput ports such that it can map some number of source devices to afewer number of destination devices. An example of a router is theBlackmagic Design Videohub provided by Blackmagic Design Pty. Ltd. ofFremont, Calif. Other examples are possible as well.

2. Stunt Switcher

The stunt switcher 304 may perform functions or acts related to mappinginput ports to output ports and related to DVEs. For example, the stuntswitcher 304 may map the one of its input ports connected to the router302 via the communication path 312 to one of its output ports connectedto an input port of the bypass switcher 306 via a communication path318, thereby allowing a video stream output by the stunt switcher 304 tobe transmitted via the communication path 318 to the bypass switcher306. As another example, the stunt switcher 304 may map the one of itsinput ports connected to the router 302 via the communication path 316to the one of its output ports connected to the input port of the bypassswitcher 306 via the communication path 318.

As noted above, the stunt switcher 304 may also perform functions oracts related to DVEs. For example, the stunt switcher 304 may design orrun a DVE, perhaps based on input received from a user. In addition, thestunt switcher 304 may store or retrieve data (e.g., programinstructions) representing a DVE.

The stunt switcher 304 may design a DVE by configuring one or morelayers known as “keys.” In one example, a DVE may be designed to, whenrun, use one or more keys to overlay text, graphics, video, or othercontent on underlying video content. In some instances, a DVE may bedesigned to, when run, reset the keys, thereby “clearing” any previouslyoverlaid content.

In one example, the stunt switcher 304 may store data representing a DVEin a particular DVE register within a data storage. Further, the stuntswitcher 304 may store text, graphics, or other content to be used inconnection with the DVE. Therefore, by overwriting the content, theresult of the stunt switcher 304 running the DVE may be altered.

When running a DVE, the stunt switcher 304 may receive content for usein generating a video stream in various ways. For example, the stuntswitcher 304 may retrieve content from a particular DVE registerindicated in the DVE. Additionally or alternatively, content may betransmitted to the stunt switcher 304 and received on an input port ofthe stunt switcher 304 as indicated in the DVE. As such, a video streamoutput by a video source, such as the news production system 104, may betransmitted to the stunt switcher 304 and used by the stunt switcher 304to generate a video stream.

Additionally or alternatively, content output by another source, such asa character generator, may be transmitted to the stunt switcher 304 andused by the stunt switcher 304 to generate a video stream. For example,where a DVE is configured to provide school-related alerts such as thosedescribed above, the alerts may include data such as the school's nameand an indication of the school's status, and the stunt switcher 304 mayreceive this data from a character generator. Depending on the design ofthe DVE, the stunt switcher 304 may combine this data with text,graphics, or other content to generate the alerts such that the stuntswitcher 304 may generate a video stream by overlaying the alerts onvideo content. Since the character generator may continually provideupdated data, the alerts may a “real-time” feel from the perspective ofviewers.

An example of a stunt switcher is the Miranda NVISION NVS5100MC providedby NVision, Inc. of Coppell, Tex. Other examples are possible as well.

3. Bypass Switcher

The bypass switcher 306 may perform functions or acts related to mappinginput ports to output ports. For example, the bypass switcher 306 maymap the one of its input ports connected to the stunt switcher 304 viathe communication path 318 to one its output ports connected to theair-chain system 110 via communication path 116.

Though now shown, typically another input port of the bypass switcher306 is connected to a video source such as a back-up video source. Thus,by altering the input-to-output mappings of the bypass switcher 306, avideo stream may be transmitted from the back-up video source to theair-chain system 110. This may act as a safeguard if, for e.g., thestunt switcher 304 malfunctions.

An example of a bypass switcher is the X-1202H switcher provided byEvertz Microsystems, Ltd. of Burlington, Ontario, Canada. Other examplesare possible as well.

Accordingly, provided that the router 302, the stunt switcher 304, andthe bypass switcher 306 have the appropriate input-to-output portmapping settings, a video stream output from the newsroom productionsystem 104 may be transmitted through the master control system 108(perhaps being manipulated in accordance with a DVE), and to theair-chain system 110 for broadcast. Likewise, given that these deviceshave the appropriate input-to-output port mapping settings, a videostream output from the video server 106 may be transmitted through themaster control system 108 (again perhaps being manipulated in accordancewith a DVE) and to the air-chain system 110 for broadcast.

4. Automation System

The automation system 308 may perform functions or acts to manageoverall functionality of the television-broadcasting system 100. In oneexample, this may begin with the automation system 308 accessing datarepresenting a traffic schedule. In some instances, this may involve theautomation system 308 retrieving the data from the traffic system 102via a communication path 120.

Based on the traffic schedule, the automation system 308 may perform oneor more functions or acts to allow the television-broadcasting system100 to carry out the events specified therein. In one example, this mayinvolve the automation system 308 traversing records of the trafficschedule and performing functions or acts based on those traversedrecords. These acts may involve causing one or more entities in thetelevision-broadcasting system 100 to perform a function or act. Theautomation system 308 may do this by sending instructions to suchentities via one or more communication paths, including for example,communication paths 118, 320, 322, and 324 with the video server 106,the router 302, the stunt switcher 304, and the bypass switcher 306,respectively.

As noted above, the automation system 308 may perform functions or actsbased on a record of a traffic schedule. For example, where the recordincludes a video source identifier that identifies the news productionsystem 104, and a start time of 6:00 am, at 6:00 am, the automationsystem 308 may cause the router 302, the stunt switcher 304, and/or thebypass switcher 306 to use appropriate input-to-output port mappingssuch that a video stream output by the newsroom production system 104 istransmitted, though the master control system 108, to the air-chainsystem 110 for broadcast. As such, this may allow thetelevision-broadcasting system 100 to broadcast a news program segment.

As another example, where a record includes a video content identifierthat maps to a video file representing video content, and a start timeof 6:06 am, the automation system 308 may cause the video server 106 toretrieve the video file and, at 6:06 am, use the video file to generateand output a video stream. Further, at 6:06 am, the automation system308 may cause the router 302, the stunt switcher 304, and/or the bypassswitcher 306 to use appropriate input-to-output port mappings such thatthe video stream output by the video server 106 is transmitted, thoughthe master control system 108, to the air-chain system 110 forbroadcast. This may allow the television-broadcasting system 100 tobroadcast a commercial, for instance.

In some instances, the automation system 308 may also perform functionsor acts based on data represented in a news program schedule (e.g.,based on an indication that the news production system 104 is scheduledto run a DVE in connection with a video stream representing particularvideo content). As such, the automation system 308 may access datarepresenting a news program schedule. In one example, this may involvethe automation system 308 retrieving the data from the news productionsystem 104 via a communication path 122.

F. Air-Chain System

The air-chain system 308 may perform functions or acts related toprocessing and delivering content. The air-chain system 110 may includean encoder and an outbound-broadcast device.

The encoder may perform functions or acts related to processing a videostream. For example, the encoder may receive a video stream output bythe bypass switcher 306 via the communication path 116, and the encodermay encode video content represented by the received video stream. Inone example, the encoder may encode video content based on the HD-SDIstandard to video content based on the MPEG 2 standard.

An example of an encoder is the NetVX provided by Harris Corporation ofMelbourne, Fla. Other examples are possible as well.

The outbound-broadcast device may perform functions related todistributing video content. As such, the outbound-broadcast device mayoutput encoded video content received from the encoder. Theoutbound-broadcast device may take a variety of forms, including forexample the form of a transmitter, satellite, or network connection(e.g., for an Internet feed). Other examples are possible as well.

III. Example Operations

FIG. 4 is a flow chart depicting acts that can be carried out in anexample method. At block 402, the example method involves an automationsystem (or another computing device) accessing a traffic schedule for atelevision broadcast. At block 404, the method involves the automationsystem selecting a record from the accessed traffic schedule, whereinthe record identifies a video source. In one example, the record mayidentify a video source by including a video source identifier thatidentifies the video source.

At block 406, the method involves the automation system determining atype of the identified video source. In one example, this may involvethe automation system determining that the identified video source is anewsroom production system based on the video source identifier having aparticular characteristic (e.g., a particular prefix) or based on thevideo source identifier being a predetermined video source identifier.

At block 408, the method involves the automation system using thedetermined type of the identified video source as a basis to select aDVE. This may involve the automation system using mapping data to map adetermined type of a video source to a particular DVE. For example,mapping data may map a determined type of newsroom production system toa DVE that is designed such that, running the selected DVE causes astunt switcher to generate a modified version of the input video streamby overlaying content on video content represented by the input videostream without distorting the video content. In some instances, theautomation system may perform the acts at blocks 506 and 508 together byuse mapping data that maps the video source identifier to a particularDVE.

At block 410, the method involves the automation system causing a stuntswitcher (or another computing device) to run the selected DVE, whereinrunning the selected DVE causes the stunt switcher to generate amodified version of an input video stream received from the identifiedvideo source. Accordingly, in one example, the automation system maycause the school-related alerts to be overlayed on a news programsegment without distorting the news program segment. However, theautomation system may select, and cause the stunt switcher to run, othertypes of DVEs depending on the determined type of video source.

In some instances, the automation system may perform the act at block410 in response to receiving a request from a user (e.g., a mastercontrol operator) via a user interface. Alternatively, the automationsystem may perform the act based on a determination that particular datais included in the traffic schedule, or based on some trigger event.

Also, in some instances, the automation system may cause the stuntswitcher to run the DVE at or about the time that the correspondingvideo content is scheduled to be broadcast. However, in other instances,the automation system may run the DVE some amount of time before orafter that time to provide a more aesthetic transmission from a viewer'sperspective.

At block 412, the method involves an encoder encoding video contentrepresented by the generated video stream. And at block 414, the methodinvolves an outbound-broadcasting device broadcasting the encoded videocontent such that it may be distributed to and seen by viewers.

FIG. 5 is a flow chart depicting acts that can be carried out in anotherexample method. At block 502, the example method involves an automationsystem (or another computing device) accessing data representing atraffic schedule for a television broadcast.

At block 504, the method involves the automation system selecting arecord from the accessed traffic schedule, wherein the record identifiesvideo content. In one example, the record may identify video content byincluding a video content identifier that identifies the video content.

At block 506, the method involves the automation system determining atype of the identified video content. In one example, this may involvethe automation system determining that the identified video content is acommercial based on the video content identifier having a particularcharacteristic (e.g., a particular prefix) or based on the video contentidentifier being a predetermined video content identifier.

At block 508, the method involves the automation system using thedetermined type of the identified video content as a basis to select aDVE. This may involve the automation system using mapping data to map adetermined type of video content to a particular DVE. For example,mapping data may map a determined type of commercial to a DVE that isdesigned such that, running the selected DVE causes a stunt switcher togenerate a modified version of an input video stream by modifyingoriginal video content represented by the input video stream such thatthe input video steam represents the original video content and emptyvideo content, and by overlaying content on the empty video content. Insome instances, the automation system may perform the acts at blocks 506and 508 together by use mapping data that maps the video contentidentifier to a particular DVE.

At block 510, the method involves the automation system causing a stuntswitcher (or another computing device) to run the selected DVE, whereinrunning the selected DVE causes the stunt switcher to generate amodified version of an input video stream representing the identifiedvideo content. Accordingly, in one example, the automation system maycause the school-related alerts to be overlayed on empty video contentbelow a commercial (i.e., such that the alerts are not overlaid on thecommercial itself). However, the automation system may select, and causethe stunt switcher to run, other types of DVEs depending on thedetermined type of video content.

In some instances, the automation system may perform the function atblock 510 in response to receiving a request from a user (e.g., a mastercontrol operator) via a user interface. Alternatively, the automationsystem may perform the function based on a determination that particulardata is included in the traffic schedule, or based on some triggerevent.

Also, in some instances, the automation system may cause the stuntswitcher to run the DVE at or about the time that the correspondingvideo content is scheduled to be broadcast, or perhaps some time beforeor after that time as discussed above.

At block 512, the method involves an encoder encoding video contentrepresented by the generated video stream. And at block 514, the methodinvolves an outbound-broadcasting device broadcasting the encoded videocontent such that it may be distributed to and seen by viewers.

FIG. 6 is a flow chart depicting acts that can be carried out in anotherexample method. At block 602, the example method involves an automationsystem (or another computing device) accessing data representing atraffic schedule for a television broadcast.

At block 604, the method involves the automation system selecting arecord from the accessed traffic schedule, wherein the record identifiesvideo content. In one example, the record may identify video content byincluding a video content identifier that identifies the video content.

At block 606, the method involves the automation system determining atype of a portion of the identified video content. In one example, thismay involve the automation system determining that the portion ofidentified video content is a commercial based on data that indicatesthe same. For instance, such data may provide types of portions of videocontent based on starting and ending times (e.g., the data may indicatethat for eight minutes of video content, the first six minutes are aportion of a show, and the last two minutes are commercials). In oneexample, a user may generate this data based on an analysis of the videocontent. In another example, a computing device may analyze the videocontent and use these analysis to automatically generate such data.

At block 608, the method involves the automation system using thedetermined type of the identified video content as a basis to select aDVE. This may involve the automation system using mapping data to map adetermined type of video content to a particular DVE. For example,mapping data may map a type of commercial to a DVE that is designed suchthat, running the selected DVE causes a stunt switcher to generate themodified version of an input video stream by modifying original videocontent represented by the input video stream such that the modifiedvideo steam represents the original video content and empty videocontent, and by overlaying content on that empty video content. In someinstances, the automation system may perform the acts at blocks 606 and608 together by use mapping data that maps the video content identifierto a particular DVE.

At block 610, the method involves the automation system causing a stuntswitcher (or another computing device) to run the selected DVE, whereinrunning the selected DVE causes the stunt switcher to generate amodified version of an input video stream representing the portion ofthe identified video content. Accordingly, in one example, theautomation system may cause the school-related alerts to be overlayed onempty video content below a commercial (i.e., such that the alerts arenot overlaid on the commercial itself). However, the automation systemmay select, and cause the stunt switcher to run, other types of DVEsdepending on the determined type of the portion of video content.

In some instances, the automation system may perform the act at block610 in response to receiving a request from a user (e.g., a mastercontrol operator) via a user interface. Alternatively, the automationsystem may perform the act based on a determination that particular datais included in the traffic schedule, or based on some trigger event.

Also, in some instances, the automation system may cause the stuntswitcher to run the DVE at or about the time that the correspondingvideo content is scheduled to be broadcast, or perhaps some time beforeor after that time as discussed above.

At block 612, the method involves an encoder encoding video contentrepresented by the generated video stream. And at block 614, the methodinvolves an outbound-broadcasting device broadcasting the encoded videocontent such that it may be distributed to and seen by viewers.

FIG. 7 is a flow chart depicting acts that can be carried out in anotherexample method. At block 702, the example method involves a controller(or another computing device) making a determination that a stuntswitcher (or another computing device) is scheduled to run a first DVEin connection with a first video stream. In one example, this mayinvolve the controller receiving an indication that the stunt switcheris scheduled to run the first DVE in connection with the first videostream. The controller may receive this indication from the stuntswitcher or from an automation system for example.

In one example, the first DVE is designed such that the stunt switcherrunning the first DVE causes the stunt switcher to generate a modifiedversion of the first video stream by overlaying first content on a firstarea of the video content.

At block 704, the method involves responsive to the controller makingthe determination that the stunt switcher is scheduled to run the firstDVE in connection with the first video stream, selecting a second DVE.In one example, this may involve the controller using mapping data tomap one DVE to another DVE.

In one example, the selected second DVE is designed such that theproduction switcher running the selected second DVE causes theproduction switcher to overlay second content on a second area of videocontent represented by the second video stream, where the first area ispositioned below the second area.

At block 706, the method involves the controller causing a productionswitcher (or another computing device) to run the selected second DVE,wherein running the selected second DVE causes the production switcherto generate the first video stream by modifying a second video stream.

Accordingly, this may allow the first content (e.g., weatherinformation) to be “stacked” on the second content (e.g., school-relatedalerts) so as to present the video content (e.g., a news programsegment), the first content, and the second content to viewers in avisually appealing manner. However, the controller may select, and causethe production switcher to run, other DVEs depending on, e.g., how themapping data is configured.

In some instances, the controller may perform the act at block 706 inresponse to receiving a request from a user (e.g., a technical director)via a user interface. Alternatively, the controller may perform the actbased on a determination that particular data is included in a newsprogram schedule, or based on some trigger event.

Also, in some instances, the controller and/or the automation system maycause the production switcher and/or the stunt switcher to run theirrespective DVEs at or about the time that the corresponding videocontent is scheduled to be broadcast, or perhaps some time before orafter that time as discussed above.

At block 708, the method involves an encoder encoding video contentrepresented by the generated modified version of the first video stream.And at block 710, the method involves an outbound-broadcasting devicebroadcasting the encoded video content such that it may be distributedto and seen by viewers.

IV. Example Variations

The variations described in connection with select examples of thedisclosed system and method may be applied to all other examples of thedisclosed system and method. Further, while examples of the disclosedmethod have been described in connection with an exampletelevision-broadcasting system, the method may be implemented in othersystems.

Also, while one or more functions or acts have been described as beingperformed by or otherwise related to certain entities (e.g., theautomation system 308), the functions or acts may be performed by orotherwise related to any entity.

Further, the functions or acts need not be performed in the disclosedorder, although in some examples, an order may be preferred. Also, notall functions or acts need to be performed to achieve the desired anadvantage of the disclosed system and method, and therefore not allfunctions or acts are required.

While select examples of the disclosed system and method have beendescribed, alterations and permutations of these examples will beapparent to those of ordinary skill in the art. Other changes,substitutions, and alterations are also possible without departing fromthe disclosed system and method in its broader aspects as set forth inthe following claims.

1. A method comprising: making a determination that a first computingdevice is scheduled to run a first DVE in connection with a first videostream; responsive to making the determination that the first computingdevice is scheduled to run the first DVE in connection with the firstvideo stream, selecting a second DVE; and causing a second computingdevice to run the selected second DVE, wherein running the selectedsecond DVE causes the second computing device to generate the firstvideo stream by modifying a second video stream.
 2. The method of claim1, wherein making the determination that the first computing device isscheduled to run the first DVE in connection with the first video streamcomprises receiving an indication that the first computing device isscheduled to run the first DVE in connection with the first videostream.
 3. The method of claim 1, wherein the first computing devicecomprises a stunt switcher and the second computing device comprises aproduction switcher.
 4. The method of claim 1, wherein the generatedfirst video stream represents a news program segment.
 5. The method ofclaim 1, wherein the selected second DVE is designed such that thesecond computing device running the selected second DVE causes thesecond computing device to overlay content on an area of video contentrepresented by the second video stream.
 6. The method of claim 5,wherein the content is first content and the area is a first area, themethod further comprising: causing the first computing device to run thefirst DVE, wherein running the first DVE causes the first computingdevice to generate a modified version of the first video stream byoverlaying second content on a second area of the video content.
 7. Themethod of claim 6, wherein the first area is positioned below the secondarea.
 8. The method of claim 6, wherein the first content comprisesschool-related content.
 9. The method of claim 1, further comprisingcausing the second video stream to be transmitted to the secondcomputing device.
 10. The method of claim 1, further comprising:encoding video content represented by the generated modified version ofthe first video stream; and broadcasting the encoded video content. 11.A non-transitory computer-readable storage medium having stored thereonprogram instructions that when executed by a processor cause performanceof a set of acts comprising: making a determination that a firstcomputing device is scheduled to run a first DVE in connection with afirst video stream; responsive to making the determination that thefirst computing device is scheduled to run the first DVE in connectionwith the first video stream, selecting a second DVE; and causing asecond computing device to run the selected second DVE, wherein runningthe selected second DVE causes the second computing device to generatethe first video stream by modifying a second video stream.
 12. Thenon-transitory computer-readable storage medium of claim 11, whereinmaking the determination that the first computing device is scheduled torun the first DVE in connection with the first video stream comprisesreceiving an indication that the first computing device is scheduled torun the first DVE in connection with the first video stream.
 13. Thenon-transitory computer-readable storage medium of claim 11, wherein thefirst computing device comprises a stunt switcher and the secondcomputing device comprises a production switcher.
 14. The non-transitorycomputer-readable storage medium of claim 11, wherein the selectedsecond DVE is designed such that the second computing device running theselected second DVE causes the second computing device to overlaycontent on an area of video content represented by the second videostream.
 15. The non-transitory computer-readable storage medium of claim14, wherein the content is first content and the area is a first area,the set of acts further comprising: causing the first computing deviceto run the first DVE, wherein running the first DVE causes the firstcomputing device to generate a modified version of the first videostream by overlaying second content on a second area of the videocontent.
 16. The non-transitory computer-readable storage medium ofclaim 15, wherein the first area is positioned below the second area.17. The non-transitory computer-readable storage medium of claim 15,wherein the first content comprises school-related content.
 18. Thenon-transitory computer-readable storage medium of claim 11, the set ofacts further comprising causing the second video stream to betransmitted to the second computing device.
 19. The non-transitorycomputer-readable storage medium of claim 11, the set of acts furthercomprising: encoding video content represented by the generated modifiedversion of the first video stream; and broadcasting the encoded videocontent.
 20. A system comprising a production switcher; and a controlconfigured for: making a determination that a stunt switcher isscheduled to run a first DVE in connection with a first video stream;responsive to making the determination that the stunt switcher isscheduled to run the first DVE in connection with the first videostream, selecting a second DVE; and causing a production switcher to runthe selected second DVE, wherein running the selected second DVE causesthe production switcher to generate the first video stream by modifyinga second video stream.